/*!
    \file       triangle.h
    \modified	03/03/11
    \copyright  (c) Diego F Andrade (diegoandrade@gmail.com)
    \licence    GPL
    \brief      Describes triangle class
    \author     Diego F Andrade
    \date	    02/14/11
 */

//This is the regular C/C++ define that ensures the compiler will include the stuff in this .h header file only once, over the course of the //compilation. It is of the format shown: this header file's filename in all capitals, with .h replaced as _H, with underscores at each end.

//----------------------------------------------------------------------------------------
// Inclusion simple del archivo .h
//----------------------------------------------------------------------------------------

#ifndef _TRIANGLE_H_
#define _TRIANGLE_H_

#include <iostream>	// Directiva de preprocesamiento para entraaada y salida de datos //Pre-proccessor directive for input - output
#include <iomanip>	
#include <cmath>	//Math library
#include <cstdio>
#include <fstream>

using namespace std;




class triangle
{
public:
    
    
    struct point 
    {
     float x;
     float y;   
    };
    
    point next_p,p1,p2;
    float growth_factor;
    float angle;
	triangle();		//Constructor
	virtual ~triangle();	//Destructor

	float distance (point p1, point p2); //distance between two points
	
	void random_point (float d, float gf, point p1, point p2);
	
	bool check_angle(float angle, point p1, point p2);
	
	void newpoint (point p1, point p2);


	
};

#endif  //_TRIANGLE_H_
